在实际开发中,遇到使用chrome自带的PDF预览功能,前端把后台返回的地址,通过XMLHttpRequest转换成blob,并在blob地址后拼接上文件名称,通过创建embed展示PDF;
这种方法展示出来的PDF会带有工具栏,并且是在新的页签打开,没有 url,导致工具栏中的下载按钮无法进行操作,测试提出缺陷,下载按钮可以下载文件;最后开发决定隐藏该工具栏。
隐藏工具栏的方法是,在PDF文件url地址后面 拼接 #scrollbars=0&toolbar=0&statusbar=0 参数,
由于转换成的blob地址,带有文件名,导致不生效,经过排查,不添加文件名也是可以的,故去掉拼接的文件名,添加以上参数,浏览器内置PDF预览工具栏可以隐藏
注:由于代码在公司内网,无法粘贴代码
还会出现的一种情况是:工具栏中的 title 不正确,比如 http://ip:port/api/file/local/download?isStream=true&authKey=filedown-a056 , 工具栏中的 title 就会是 download, 如需要修改 title值,可以把 url 地址修改为 http://ip:port/api/file/local/download/文件名?isStream=true&authKey=filedown-a05 ,原因是 工具栏中的title读取的是url 地址中最后一个 '/' 后面的参数作为title值